Finite Domain Constraint Programming Systems
نویسندگان
چکیده
One of the main reasons why constraint programming quickly found its way into applications has been the early availability of usable constraint programming systems. Given the wide range of applications using constraint programming it is obvious that one of the key properties of constraint programming systems is their provision of widely reusable services for constructing constraint-based applications. A constraint programming system can be thought of as providing a set of reusable services. Common services include constraint propagation, search, and services for interfacing to the system. This chapter looks in more detail at which services are provided by a constraint programming system and in particular what are the key principles and techniques in constructing and coordinating these services. To give the chapter a clear focus and a reasonably uniform presentation, we mostly restrict our attention to propagation-based finite domain constraint programming systems. That is, systems that solve problems using constraint propagation involving variables ranging over some finite set of integers. The focus on finite domain constraint programming systems coincides with both practical relevance and known principles and techniques: systems at least offer services for finite domains; much of the known principles and techniques have been conceived and documented for finite domains. Essential for a system in providing the services mentioned above are some important abstractions (or objects) to be implemented by a system: variables, implementations for constraints, and so on. Important abstractions for propagation, search, and interfacing are as follows.
منابع مشابه
Programming finite-domain constraint propagators in Action Rules
In this paper, we propose a new language construct, called AR (Action Rules), and describe how various propagators for finite-domain constraints can be implemented in it. An action rule specifies a pattern for agents, an action that the agents can carry out, and an event pattern for events that can activate the agents. AR combines the goal-oriented execution model of logic programming with the ...
متن کاملImplementing Finite-domain Constraint Logic Programming on Top of a Prolog-System with Delay-mechanism
In the past few years, an extensive amount of empirical evidence has proved the practical value of finite-domain constraint logic programming (CLP). Using special CLP-systems, many constraint satisfaction applications have been programmed very quickly and the resulting programs have a good performance. In this paper, we show how to implement a finite-domain CLP on top of a PROLOG-system equippe...
متن کاملConstraint functional logic programming over finite domains
In this paper, we present our proposal to Constraint Functional Logic Programming over Finite Domains (CFLP (FD) ) with a lazy functional logic programming language which seamlessly embodies finite domain (FD) constraints. This proposal increases the expressiveness and power of constraint logic programming over finite domains (CLP (FD) ) by combining functional and relational notation, curried ...
متن کاملConstraint propagation in Mozart
This thesis presents constraint propagation in Mozart which is based on computational agents called propagators. The thesis designs, implements, and evaluates propagator-based propagation engines. A propagation engine is split up in generic propagation services and domain specific domain solvers which are connected by a constraint programming interface. Propagators use filters to perform constr...
متن کاملEntailment of Finite Domain Constraints
Using a glass-box theory of finite domain constraints, FD, we show how the entailment of user-defined constraints can be expressed by antimonotone FD constraints. We also provide an algorithm for checking the entailment and consistency of FD constraints. FD is shown to be expressive enough to allow the definition of arithmetical constraints, as well as nontrivial symbolic constraints, that are ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2006